Knowledge Management Environment

ABSTRACT

According to one embodiment, a computer-readable medium has computer-executable instructions that, when executed by a computer, are configured to define a plurality of management services according to a model. The model structures operations among the plurality of management services according to a knowledge configuration. A knowledge service is defined according to the model. The model assigns the knowledge service to a knowledge store according to the knowledge configuration. The knowledge store contains a plurality of data records. Instances of the plurality of management services are created. The instances of the plurality of management services control access to the knowledge store. An instance of the knowledge service is created. The instance of the knowledge service performs operations on the data records.

TECHNICAL FIELD

This invention relates generally to the field of computer programmingand more specifically to a knowledge management environment.

BACKGROUND

In the context of enterprise architecture, a service is a defined set ofcontiguous and autonomous business or technical functionality.Service-orientation is a design paradigm that specifies the creation ofautomation logic using services. Service-orientation may be applied indeveloping a service-oriented architecture, which provides methods forsystem development and integration.

SUMMARY

According to one embodiment, a computer-readable medium hascomputer-executable instructions that, when executed by a computer, areconfigured to define a plurality of management services according to amodel. The model structures operations among the plurality of managementservices according to a knowledge configuration. A knowledge service isdefined according to the model. The model assigns the knowledge serviceto a knowledge store according to the knowledge configuration. Theknowledge store contains a plurality of data records. Instances of theplurality of management services are created. The instances of theplurality of management services control access to the knowledge store.An instance of the knowledge service is created. The instance of theknowledge service performs operations on the data records.

Certain embodiments of the invention may provide one or more technicaladvantages. A technical advantage of one embodiment may be thecapability to provide a service-oriented approach to distributingknowledge stores. Yet other technical advantages may include thecapability to install a set of basic services to support a knowledgefederation. Yet other technical advantages may include the capability tocontrol and monitor operation of a knowledge federation.

Various embodiments of the invention may include none, some, or all ofthe above technical advantages. One or more other technical advantagesmay be readily apparent to one skilled in the art from the figures,descriptions, and claims included herein.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and itsfeatures and advantages, reference is now made to the followingdescription, taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 presents a knowledge management environment according to oneembodiment;

FIG. 2 presents a multi-node knowledge management environment accordingto one embodiment;

FIG. 3 presents a method for controlling the lifecycle of an instance ofa service;

FIG. 4 presents one embodiment of a method for managing a knowledgestore environment; and

FIG. 5 presents an embodiment of a general purpose computer operable toperform one or more operations of various embodiments of the invention.

DETAILED DESCRIPTION OF THE DRAWINGS

It should be understood at the outset that, although exampleimplementations of embodiments of the invention are illustrated below,the present invention may be implemented using any number of techniques,whether currently known or not. The present invention should in no waybe limited to the example implementations, drawings, and techniquesillustrated below. Additionally, the drawings are not necessarily drawnto scale.

A knowledge store may include any physical knowledge stores capable ofstoring a structured collection of data records. The data records mayrepresent a conceptual description or modeling of information.Embodiments of the data records may be defined according to a semanticdata model. A semantic data model is a data-modeling technique to definethe meaning of data within the context of its interrelationships withother data.

In some embodiments, the data records may be defined as a ResourceDescription Framework (RDF) expression. An example of an RDF expressionis an RDF triple, which describes data in the form of asubject-predicate-object expression. The subject denotes the resource.The predicate denotes traits or aspects of the resource and expresses arelationship between the subject and the object. For example, the notion“the sky has the color blue” may be expressed as an RDF triple: asubject denoting “the sky,” a predicate denoting “has the color,” and anobject denoting “blue.”

A collection of RDF statements may resemble a labeled graph under graphtheory. A graph is an abstraction of relationships among objects. Agraph includes two or more nodes and one or more edges connecting thenodes. Graph labeling refers to the assignment of unique labels to theedges and nodes of a graph. A subgraph is a graph whose node set is asubset of another graph.

Collections of the data records may be accessed using a query executedusing a query language. In several embodiments, queries may be executedto retrieve the data records 112 according to an RDF query language suchas SPARQL Protocol and RDF Query Language (“SPARQL”). Other examples ofa query language may include RDF query language (RDQL), Versa, and XMLUser Interface Language (XUL).

A query of RDF expressions may contain a set of triple patterns. Atriple pattern resembles an RDF triple. However, the subject, predicate,and object of a triple pattern may be a variable. In a query, the triplepattern matches the RDF expression when the terms of the RDF triple maybe substituted for the variables of the triple pattern. In someembodiments, queries may also include groups of triple patterns, andsome of the triple patterns may include variables that relate to oneanother. In some embodiments, queries may also include complex filters,aggregation statements, sorting statements optional patterns, and such.

The knowledge store may include multiple physical knowledge storesarranged in a distributed knowledge store environment. However, fieldedinstances of distributed knowledge stores are rare. In some instances,distributed knowledge stores may lack practical tools for an enterpriseframework. Accordingly, teachings of certain embodiments recognize theuse of a service-oriented cluster of knowledge stores. Teachings ofcertain embodiments also recognize the ability to create, configure, andmonitor the operation of knowledge components individually andcollectively. Teachings of certain embodiments also recognize theability to implement a service-oriented framework in runtime.

FIG. 1 presents a knowledge management environment 100 according to oneembodiment. The knowledge management environment 100 features amanagement agent 110, management services 120, a knowledge managementservice 130, a knowledge service 135, and physical stores 140.

The management agent 110 illustrated in FIG. 1 features servicecomponents 111 a-115 a and configuration components 111 b-115b. In theembodiment illustrated in FIG. 1, the five service components 111 a-115a correspond to the five configuration components 111 b-115 b. Otherembodiments of the knowledge management environment 100 may featuremore, less, or different service components and configurationcomponents. Some embodiments of the knowledge management environment 100may include an interface in communication with the management agent 110that allows a user to configure and manage the service components 111a-115 a and the configuration components 111 b-115 b.

In some embodiments, the service components 111 a-115 and theconfiguration components 111 b-115 b may be represented by Java managedbeans. Teachings of certain embodiments recognize that the use of Javamanaged beans may allow the knowledge management environment 100 toincorporate functionality from Java Management Extensions technology.Java Management Extensions is a toolkit for building distributed,web-based, dynamic solutions for managing and monitoring applicationsand service-driven networks. However, embodiments of the servicecomponents 110 a-115 a and the configuration components 110 b-115 b arenot limited to Java managed beans, but may be represented as componentsin any suitable form.

Each of the service components 110 a-115 a may be operable tocommunicate with the management services 120. In the embodimentillustrated in FIG. 1, the knowledge management environment 100 featuresfive management services 121-125. Other embodiments of the knowledgemanagement environment 100 may feature more, less, or differentmanagement services.

In the embodiment illustrated in FIG. 1, the components 111 acommunicates with a lookup service 121. The lookup service 121 providesa registry in which service providers may advertise their services, andclients (as well as other services) may locate and enlist the help ofthose services. The components 112 a communicates with a classdefinition service 122. The class definition service 122 furnishescurrent class definition files to the lookup service 121 and othercomponents wishing to obtain the most current class files. For example,an application may deploy new code by downloading class definitions fromthe class definition service 122.

In some embodiments, the lookup service 121 and the class definitionservice 122 may incorporate functionality from Apache River (formerlyknown as “Jini”). In some embodiments, Apache River may be incorporatedto provide a service-oriented architecture that enables construction ofsecure, adaptive, distributed systems with federations of services andclients. For example, in some embodiments, the lookup service 121 mayincorporate the Registrar from Apache River to provide service-discoveryfunctionality.

In the embodiment illustrated in FIG. 1, the components 113 acommunicates with a model definition service 123. The model definitionservice 123 provides a set of distributed knowledge store models thatmay define specific, unique configurations of knowledge clusters andservices. The models may specify the service composition, assignment ofservices to hosts, and connection details so that the cluster may beformed and configured into a network. The models may include bothuser-created models and default models.

In the embodiment illustrated in FIG. 1, the components 114 acommunicates with an authentication service 124. The authenticationservice 124 may provide user validation for other components thatrequire authentication. For example, a service request submitted to oneof the management services 120 may include an authentication token; theservice receiving the service request may validate the authenticationtoken with the authentication service 124 and then either allow or denythe service request. If the service then attempts to pass the servicerequest to more services, the service may pass the user validation withthe service request.

In the embodiment illustrated in FIG. 1, the components 115 acommunicates with a logging service 125. The logging service 125provides a common logging mechanism for the management services 120 andthe management agent 110. The logging service may log activities such asstoring, retrieving, and filtering.

In some embodiments, the management agent 110 may invoke the loggingservice 125 to collect and report operating statistics, monitor thestatus and health of the management 120, and provide failure detectioncapability. For example, the logging service 125 may collect statisticsregarding knowledge store functionality. Examples include the estimatedsize of physical knowledge stores within the environment; average findoperations performed per second over some configurable time period; andaverage data records per second loaded over some configurable timeperiod. Available statistics may also include system load average,memory usage, garbage collection time, and available disk space.

In addition, the logging service 125 may return health-status reports.For example, in one embodiment, a red-yellow-green light system mayreturn a health-status report: a green light signifies that the systemis operating normally with no known impending problems; a yellow lightsignifies that the system is operating normally but with potentialimpending failures detected; and a red light signifies that the systemis no longer operating normally. The health-status reports may be tiedto failure-detection operations. For example, the logging service 125may report a potential failure when the knowledge store is almost full,the physical storage is almost full, or a component is no longercommunicating with the system.

In some embodiments, the knowledge management service 130 and theknowledge service 135 provide a mechanism for communicating with one ormore knowledge stores 140. For example, in one embodiment, themanagement agent 110 may manage the knowledge stores 140 through theknowledge management service 130. In this embodiment, the knowledgemanagement service 130 represents the knowledge stores 140 to themanagement agent 110.

In some embodiments, examples of the knowledge service 135 may include adistributed graph service, a distributed knowledge service, a reasoningservice, and a query service. The distributed graph service creates aroot node in the collection of knowledge services, which provides asingle point of access to a distributed knowledge system. Thedistributed graph service exposes a multi-store, or multi-node,knowledge system externally as a single knowledge store. The reasoningservice executes a rule across multiple graphs and adds the resultingdata records into a specified target graph. The query service offers anaccess point to manage and prioritize knowledge store queries.

In the embodiment illustrated in FIG. 1, knowledge managementenvironment 100 features six knowledge stores 140, labeled as physicalknowledge stores 142-146.

In the illustrated embodiment, the physical knowledge store 142represents an assertions store. The assertions store provides a set ofknown facts or statements that have been asserted to be true accordingto some data source or user. These are the base statements of fact fromwhich additional knowledge may be derived.

In the illustrated embodiment, the physical knowledge store 143represents an inferences store. The inferences store provides storagefor statements that are derived from the assertions in the assertionstore via rules in a rules store in combination with the ontologicalstatements in an ontology store.

In the illustrated embodiment, the physical knowledge store 144represents a reification store. The reification store provides storagefor reification statements about the fact in the assertion store.Reification statements may include, but are not limited to, statementsabout the validity, source, reliability, assertion date, etc. Teachingsof certain embodiments recognize that storing reification statements ina separate reification store may improve performance.

In the illustrated embodiment, the physical knowledge store 145represents a rules store. The rules store provides a set of complexinference rules in some rule language that can be executed against theassertion and the aggregate ontology stores to produce derivedinformation for the inference store.

The physical knowledge store 146 represents an ontology store. Anontology may include any formal representation of a set of conceptswithin a domain, the properties of those concepts, and the relationshipsbetween those concepts. The concepts may classify instances of theconcepts, other concepts, or a combination of both. In some embodiments,the instances may be stored as data records in the knowledge store 170.In these embodiments, the ontologies provide a shared vocabulary for thedata records.

For example, an ontology may define a concept “car.” One instance of acar is a Ford Explorer. The Ford Explorer may have several properties: aname (e.g., Ford Explorer), an engine (e.g., 4.0 liter engine), atransmission (e.g., 6-speed transmission), and an interior (e.g.,leather). Instances of the concept “car” may have relationships to otherinstances of the concept “car.” For example, the instance Ford Explorermay have a defined relationship to its predecessor, the Ford Bronco. Aconcept can also subsume other concepts; for example, a concept“vehicle” may subsume the concept “car” because every instance of a carmust be an instance of a vehicle. Subsumption relationships may be usedto create hierarchies of concepts.

The ontologies may be encoded according to an ontology language. Twoexamples of an ontology language for describing RDF expressions are theWeb Ontology Language (OWL) and RDF Schema. Other embodiments of theontologies may be encoded according to other knowledge representationlanguages.

FIG. 2 presents a multi-node knowledge management environment 200according to one embodiment. The multi-node knowledge managementenvironment 200 features a node 210 and a node 250. The nodes 210 and250 may represent any hosts within a distributed knowledge store. Forexample, in one embodiment, the node 210 or node 250 may be local to aknowledge store. In some embodiments, the node 210 and node 250 maycommunicate over an enterprise network; in other embodiments, the nodes210 and 250 may communicate over a local network. Embodiments of themulti-node knowledge management environment 200 may include furthernodes in addition to the nodes 210 and 250.

The node 210 features a management agent 220, management services 230, adistributed knowledge management service 240, and a distributedknowledge service 245. In the illustrated embodiment, the managementagent 220 features service components 221 a-225 a and configurationcomponents 221 b-225 b. Examples of the management agent 220, theservice components 221 a-225 a, and the configuration components 221b-225 b may include the management agent 110, the service components 111a-115 a, and the configuration components 111 b-115 b of FIG. 1. In theillustrated embodiment, the management services 230 include managementservices 231-235. Examples of the management services 231-235 mayinclude the management services 121-125 of FIG. 1. Examples of thedistributed knowledge management service 240 and the distributedknowledge service 245 may include the knowledge management service 130and the knowledge service 135 of FIG. 1.

In the embodiment illustrated in FIG. 2, the multi-node knowledgemanagement environment 200 features six knowledge stores 260, labeled asphysical knowledge stores 261-266. Examples of the physical knowledgestores 262-266 may include the physical knowledge stores 142-146 ofFIG. 1. In the illustrated embodiment, the physical knowledge store 261resides on the node 210, and the physical knowledge stores 262-266reside on the node 250; however, embodiments of the knowledge stores 260may reside on any node within the knowledge management environment 200.

In the illustrated embodiment, the physical knowledge store 261represents an aggregate ontology store. An aggregate ontology store mayprovide common storage for pulling several ontologies from remote storesinto a local store.

In the illustrated embodiment, the knowledge stores 260 are managed byknowledge services 270, labeled as local knowledge management services271 a-276 a and local knowledge services 271 b-276 b. In someembodiments, the local knowledge management services 271 a-276 a maymanage the local knowledge services 271 b-276 b. In the illustratedembodiment, the local knowledge services 271 b-276 b are incommunication with the distributed knowledge service 245. In thisembodiment, the distributed knowledge service 245 may forward servicerequests to the local knowledge services 271 b-276 b, which are local tothe physical knowledge stores 260. For example, the distributedknowledge service 245 may include a distributed graph service thatexposes a multi-store, or multi-node, knowledge system externally as asingle knowledge store.

In the illustrated embodiment, the local knowledge management services272 a-276 a are in communication with a management agent 280 residing onthe node 250. In the illustrated embodiment, the management agent 280features knowledge service components 282 a-286 a and knowledgeconfiguration components 282 b-286 b. Other embodiments of the knowledgemanagement environment 100 may feature more, less, or differentknowledge service components and knowledge configuration components.Some embodiments of the knowledge management environment 100 may includean interface in communication with the management agent 110 that allowsa user to configure and manage the knowledge service components 282a-286 a and the knowledge configuration components 282 b-286 b.

In some embodiments, the knowledge service components 282 a-286 a andthe knowledge configuration components 282 b-286 b may be represented byJava managed beans. However, embodiments of the knowledge servicecomponents 282 a-286 a and the knowledge configuration components 282b-286 b are not limited to Java managed beans, but may be represented ascomponents in any suitable form.

FIG. 3 presents a method for controlling the lifecycle of an instance ofa service. In some embodiments, the method of FIG. 3 may be executed bya managing component. Examples of the managing component may include theservice components 111 a-115 a, the service components 221 a-225 a, andthe knowledge service components 282 a-286 a. Examples of the servicesof FIG. 3 may include the management services 120, the managementservices 230, and the knowledge services 270.

The method of FIG. 3 begins at step 300. At step 302, a create commandis issued. The create command creates an instance of a service in aready state. At step 304, a start command is issued. The start commandstarts the instance, resulting in the instance having a running state.At step 306, a pause command is issued. The pause command pauses theinstance, resulting in the instance having a paused state. At step 308,a resume command is issued. The resume command unpauses the instance,returning the instance to the running state. At step 310, a stop commandis issued. The stop command stops the instance, resulting in theinstance having a stopped state. At step 312, the instance may berestarted, returning the instance to the running state. At step 314, aterminate command is issued. The terminate command terminates theinstance of the service.

Embodiments of the method of FIG. 3 may include fewer, more, ordifferent commands and states than those illustrated in FIG. 3.Additionally, the commands of FIG. 3 may be issued in any order.

FIG. 4 presents one embodiment of a method for managing a knowledgestore environment. The method of FIG. 4 may incorporate one or morecomponents of the knowledge management environments of FIGS. 1 and 2.

The method of FIG. 4 starts at step 400. At step 402, managementservices are defined. Examples of the management services may includethe management services 120, the management services 230, and the localknowledge management services 271 a-276 a. The management services maybe defined according to a model. For example, the model definitionservice 123 may provide a set of distributed knowledge store models thatdefines specific, unique configurations of knowledge clusters andservices.

At step 404, knowledge services are defined. Examples of the knowledgeservices may include the knowledge service 135, the distributedknowledge service 245, and the local knowledge services 271 b-276 b. Theknowledge services may be defined according to a model. For example, themodel definition service 123 may provide a set of distributed knowledgestore models that defines specific, unique configurations of knowledgeclusters and services.

At step 406, instances of the management services may be created. Forexample, in one embodiment, the instances of the management services maybe created according to the create command of step 302. At step 408,instances of the knowledge services may be created. For example, in oneembodiment, the instances of the knowledge services may be createdaccording to the create command of step 302.

In some embodiments, the model may be validated before instances of themanagement services are created. For example, validation operations mayinclude, but not limited to, checking for missing property values,checking for invalid ranges on property values, assuring that aknowledge system matches a physical deployment environment, checking forlogical errors in system design (i.e., loops in distributed storagesetup, missing services, etc.), or any other errors in configurationthat will cause runtime problems. Teachings of certain embodimentsrecognize that validation may assure that the complete knowledgeenvironment is logically consistent and matches the real deploymentenvironment.

FIG. 5 presents an embodiment of a general purpose computer 10 operableto perform one or more operations of various embodiments of theinvention. The general purpose computer 10 may generally be adapted toexecute any of the well-known OS2, UNIX, Mac-OS, Linux, and WindowsOperating Systems or other operating systems. The general purposecomputer 10 in this embodiment comprises a processor 12, a memory 14, amouse 16, a keyboard 18, and input/output devices such as a display 20,a printer 22, and a communications link 24. In other embodiments, thegeneral purpose computer 10 may include more, less, or other componentparts.

Several embodiments may include logic contained within a medium. Logicmay include hardware, software, and/or other logic. Logic may be encodedin one or more tangible media and may perform operations when executedby a computer. Certain logic, such as the processor 12, may manage theoperation of the general purpose computer 10. Examples of the processor12 include one or more microprocessors, one or more applications, and/orother logic. Certain logic may include a computer program, software,computer executable instructions, and/or instructions capable beingexecuted by the general purpose computer 10. In particular embodiments,the operations of the embodiments may be performed by one or morecomputer readable media storing, embodied with, and/or encoded with acomputer program and/or having a stored and/or an encoded computerprogram. The logic may also be embedded within any other suitable mediumwithout departing from the scope of the invention.

The logic may be stored on a medium such as the memory 14. The memory 14may comprise one or more tangible, computer-readable, and/orcomputer-executable storage medium. Examples of the memory 14 includecomputer memory (for example, Random Access Memory (RAM) or Read OnlyMemory (ROM)), mass storage media (for example, a hard disk), removablestorage media (for example, a Compact Disk (CD) or a Digital Video Disk(DVD)), database and/or network storage (for example, a server), and/orother computer-readable medium.

The communications link 24 may be connected to a computer network or avariety of other communicative platforms including, but not limited to,a public or private data network; a local area network (LAN); ametropolitan area network (MAN); a wide area network (WAN); a wirelineor wireless network; a local, regional, or global communication network;an optical network; a satellite network; an enterprise intranet; othersuitable communication links; or any combination of the preceding.

Although the illustrated embodiment provides one embodiment of acomputer that may be used with other embodiments of the invention, suchother embodiments may additionally utilize computers other than generalpurpose computers as well as general purpose computers withoutconventional operating systems. Additionally, embodiments of theinvention may also employ multiple general purpose computers 10 or othercomputers networked together in a computer network. For example,multiple general purpose computers 10 or other computers may benetworked through the Internet and/or in a client server network.Embodiments of the invention may also be used with a combination ofseparate computer networks each linked together by a private or a publicnetwork.

Modifications, additions, or omissions may be made to the systems andapparatuses described herein without departing from the scope of theinvention. The components of the systems and apparatuses may beintegrated or separated. Moreover, the operations of the systems andapparatuses may be performed by more, fewer, or other components. Themethods may include more, fewer, or other steps. Additionally, steps maybe performed in any suitable order. Additionally, operations of thesystems and apparatuses may be performed using any suitable logic. Asused in this document, “each” refers to each member of a set or eachmember of a subset of a set.

Although several embodiments have been illustrated and described indetail, it will be recognized that substitutions and alterations arepossible without departing from the spirit and scope of the presentinvention, as defined by the appended claims.

To aid the Patent Office, and any readers of any patent issued on thisapplication in interpreting the claims appended hereto, applicants wishto note that they do not intend any of the appended claims to invokeparagraph 6 of 35 U.S.C. §112 as it exists on the date of filing hereofunless the words “means for” or “step for” are explicitly used in theparticular claim.

1. A computer-readable medium having computer-executable instructions,when executed by a computer configured to: define a plurality ofmanagement services according to a model, the model structuringoperations among the plurality of management services according to aknowledge configuration; define a knowledge service according to themodel, the model assigning the knowledge service to a knowledge storeaccording to the knowledge configuration, the knowledge store comprisinga plurality of data records; create instances of the plurality ofmanagement services, the instances of the plurality of managementservices operable to control access to the knowledge store; and createan instance of the knowledge service, the instance of the knowledgeservice operable to perform operations on the data records.
 2. Thecomputer-readable medium of claim 1, wherein the data records areResource Description Framework (RDF) expressions.
 3. Thecomputer-readable medium of claim 1, the instructions when executedfurther configured to create instances of the plurality of managementservices on the knowledge store by providing a management agent, themanagement agent comprising a plurality of management components, theplurality of management components operable to create the instances ofthe plurality of management services.
 4. The computer-readable medium ofclaim 3, the instructions when executed further configured to provide auser interface in communication with the management agent, the userinterface operable to configure the management services throughmanagement components.
 5. The computer-readable medium of claim 1,wherein the knowledge store comprises a plurality of physical knowledgestores, the instructions when executed further configured to define aknowledge service according to the model by defining a plurality ofknowledge service according to the model, the model assigning theplurality of knowledge services to the plurality of physical knowledgestores according to the knowledge configuration.
 6. Thecomputer-readable medium of claim 5, wherein the plurality of physicalknowledge stores communicate across two or more network domains.
 7. Thecomputer-readable medium of claim 6, wherein the set of the managementservices on each of the plurality of physical knowledge stores areoperable to limit access to the data records across the two or morenetwork domains.
 8. The computer-readable medium of claim 5, wherein theplurality of management services comprises a distributed knowledgeservice, the distributed knowledge service representing the plurality ofphysical knowledge as a distributed knowledge store with a single pointof access.
 9. The computer-readable medium of claim 1, wherein theplurality of management services the instructions when executed furtherconfigured to measure performance statistics of the knowledge store. 10.The computer-readable medium of claim 1, wherein the plurality ofmanagement services the instructions when executed further configured todetect a knowledge store failure.
 11. A method for managing a knowledgestore environment, comprising: using a computer system, defining aplurality of management services according to a model, the modelstructuring operations among the plurality of management servicesaccording to a knowledge configuration; using a computer system,defining a knowledge service according to the model, the model assigningthe knowledge service to a knowledge store according to the knowledgeconfiguration, the knowledge store comprising a plurality of datarecords; using a computer system, creating instances of the plurality ofmanagement services, the instances of the plurality of managementservices operable to control access to the knowledge store; and using acomputer system, creating an instance of the knowledge service, theinstance of the knowledge service operable to perform operations on thedata records.
 12. The method of claim 11, wherein the data records areRDF expressions.
 13. The method of claim 11, wherein creating instancesof the plurality of management services on the knowledge storecomprises: providing a management agent, the management agent comprisinga plurality of management components, the plurality of managementcomponents operable to create the instances of the plurality ofmanagement services.
 14. The method of claim 13, further comprisingproviding a user interface in communication with the management agent,the user interface operable to configure the management services throughmanagement components.
 15. The method of claim 11, wherein the knowledgestore comprises a plurality of physical knowledge stores, wherein thedefining a knowledge service according to the model comprises: defininga plurality of knowledge service according to the model, the modelassigning the plurality of knowledge services to the plurality ofphysical knowledge stores according to the knowledge configuration. 16.The method of claim 15, wherein the plurality of physical knowledgestores communicate across two or more network domains.
 17. The method ofclaim 16, wherein the set of the management services on each of theplurality of physical knowledge stores are operable to limit access tothe data records across the two or more network domains.
 18. The methodof claim 15, wherein the plurality of management services comprises adistributed knowledge service, the distributed knowledge servicerepresenting the plurality of physical knowledge as a distributedknowledge store with a single point of access.
 19. The computer-readablemedium of claim 11, further comprising measuring performance statisticsof the knowledge store.
 20. The computer-readable medium of claim 11,further comprising detecting a knowledge store failure.